package Martix;

import java.util.Arrays;

/**
 * @Classname 搜索递增矩阵中目标值240
 * @Description TODO
 * @Date 2023/2/18 9:45
 * @Created by xjl
 */
public class 搜索递增矩阵中目标值240 {

    /**
     * @description 直接暴力的方法 但是一般都是超时结果
      * @param: matrix
     * @param: target
     * @date: 2023/2/18 9:48
     * @return: boolean
     * @author: xjl
    */
    public boolean searchMatrix(int[][] matrix, int target) {
        for (int[] arr:matrix){
            for (int i:arr){
                if (i==target){
                    return true;
                }
            }
        }
        return false;
    }

    /**
     * @description 利用二分法来 因为每一行都是递增的
      * @param: matrix
     * @param: target
     * @date: 2023/2/18 9:49
     * @return: boolean
     * @author: xjl
    */
    public boolean searchMatrix2(int[][] matrix, int target) {
        for (int[] arr:matrix){
            // 调用了系统的二分法来实现
            if (Arrays.binarySearch(arr,target)>=0){
                return true;
            }
        }
        return false;
    }
}
